Jump To:
Technical Q&As: Graphics & Imaging
Quartz 2D is a modern drawing API that implements a superset of the PDF 1.4 specification. Developers can use Quartz 2D to achieve many of the same visual effects used in the Mac OS X user interface, including translucency and drop shadows. Quartz also provides low-level system services such as window buffering and composition, event handling and dispatch, display management, and text rendering. Developers can use the Quartz Services API to configure and control graphics displays and to implement remote operation protocols.

Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Date
Creating color spaces that ensure color matching. (HTML)
QA1396: How to create color spaces that ensure color matching.
2005-01-13
Finding an NSView's current magnification. (HTML)
QA1346: How to discover the current magnification (zoom level) of any NSView.
2004-12-13
How do I determine how much VRAM is available on my video card? (HTML)
QA1168: Using Core Graphics and IOKit to find the physical size of VRAM on installed hardware.
2004-10-11
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
2004-09-09
Shearing a Coordinate Space with NSAffineTransform (HTML) ()
QA1332: Describes a simple way to shear coordinate spaces by adding a few methods to the NSAffineTransform class.
2004-01-29
CGImageRef contents are immutable (HTML) ()
QA1276: Explains that CGImageRef contents are considered immutable once created.
2003-07-17
Debugging Graphics with QuartzDebug (HTML) ()
QA1236: Explains how to use QuartzDebug to debug graphics issues.
2003-02-25
Quartz 2D Thread Safety (HTML) ()
QA1238: Explains the thread-safety issues for the Quartz 2D API.
2003-02-25
How do I tell if a particular display is being hardware accelerated by Quartz Extreme? (HTML) ()
QA1218: Describes how to use CGDisplayUsesOpenGLAcceleration to see if a display is accelerated or not.
2002-12-04
How can I programmatically determine the DPI of the current video mode? (HTML) ()
QA1217: Describes how to compute the DPI for a given display in a given mode using Core Graphics.
2002-12-02
Quartz 2D Interpolation (HTML) ()
QA1186: Explains how to control Quartz 2D's image interpolation.
2002-10-29
Setting the preferred CMM programatically? (HTML)
QA1086: Uses the NCMConcatProfileSet structure to specify the CMM to be used to make the CMWorldRef with the NCWConcatColorWorld function.
2001-10-24
CGContextClosePath (HTML)
QA1046: Explains when you should call CGContextClosePath.
2001-10-02
Saving the current Core Graphics Path (HTML)
QA1056: Explains that the Core Graphics save and restore GState APIs do not affect the path.
2001-10-02
CGContext Bounds (HTML)
QA1048: Explains how to determine the bounds of a CGContext.
2001-07-02
CGContextAddLineToPoint, CGContextAddCurveToPoint, et. al. (HTML)
QA1049: Explains why the CGContextAddXYZ APIs don't draw anything immediately.
2001-07-02
Drawing a Path Multiple Times (HTML)
QA1047: Explains that path drawing operations consume the path.
2001-07-02
How to measure CG text (HTML)
QA1051: Explains how to measure Core Graphics text.
2001-07-02
Turning Off Core Graphics Clipping (HTML)
QA1050: Explains how to clear the clipping path for a CGContext.
2001-07-02
Unexpected CG state changes (HTML)
QA1045: Explains why the Core Graphics drawing state sometimes changes for no apparent reason.
2001-07-02
DeviceLoop is for drawing (HTML)
QA1024: Warns of one common misuse of the DeviceLoop API and gives two alternative solutions.
2001-04-11
How do I use QuickDraw with CGDirectDisplay? (HTML)
QA1011: Explains how to draw to a CGDirectDisplay-captured display using QuickDraw.
2001-04-11
SyncCGContextOriginWithPort (HTML)
QA1010: Describes how to use SyncCGContextOriginWithPort.
2001-04-11
Why are my Core Graphics calls drawing upside down? (HTML)
QA1009: Explains why CoreGraphics drawing comes out upside down relative to QuickDraw drawing.
2001-04-11